The present invention relates to inter-gadget communication that allows electronic information from different sources to be independently viewed or correlated from within a browser.
The Department of Defense (DoD) and US government intelligence agencies process large amounts of electronic information. Traditionally, dissemination, handling, and correlation of electronic information is done manually. For instance, electronic information from a first source may be presented in one format, while electronic information from a second source may be presented in a different format. The only way to combine the electronic information from the two sources is to manually correlate the data from the two sources. Also, many conventional electronic solutions have vendor constraints, which prevent combining source information.
In particular, the industry has tried to address part of the information correlation problem using portals. Major vendors such as BEA and IBM, for example, have developed portlet-to-portlet communication to permit two different sources to communicate via portlets. However, each vendor's portlets only communicate within that vendor's portal. In addition, gadgets have been developed by such organizations as Google, Microsoft, and Apple Computer, for example. Gadgets are small objects that allow dynamic content to be placed on a web page.
A mashup is a web application hybrid that combines data from more than one source into a single integrated tool. Thus, a mashup combines data from different sources in one place using JavaScript. A mashup does not involve simple embedding of data from another site to form a compound document. An example, cartographic data from Google Maps™, for example, may be used to add location information to real-estate data, thereby creating a new and distinct web service that was not originally provided by either source.
Content used in mashups is typically sourced from a third party via a public interface, application programming interface (API) or web service. The architecture of mashup web applications always has three parts. The first part is the content provider, which is the source of the data. Data is made available using an application programming interface (API) and different Web-protocols such as RSS, REST, and Web Service, for example. The second part is the mashup site. The mashup site comprises the web application that provides the new service using different data sources that are not owned by it. The third part is the client web browser. The client web browser is the user interface of the mashup. In a web-application, the content can be mashed by the client web browser using a client-side web language, such as JavaScript.
It would be desirable to have an inter-gadget communication framework that provides for an improved way to mash up the data derived from multiple sources. It would be desirable to have inter-gadget communications that provides an open way to correlate and view information from differing sources independent of vendor deployed solutions.